package com.example.matchingengine.service.strategy;

/**
 * 原型模式接口
 * 支持策略对象的克隆复用，提高性能
 */
public interface PrototypeStrategy extends Cloneable {
    
    /**
     * 克隆策略对象
     * @return 克隆的策略对象
     */
    PrototypeStrategy clone();
    
    /**
     * 重置策略状态
     * 在复用策略对象时，需要重置内部状态
     */
    void reset();
    
    /**
     * 获取策略类型标识
     * @return 策略类型
     */
    String getStrategyType();
}